package com.fang.modbus.example;

import com.fang.modbus.ModbusServer;
import com.fang.modbus.ModbusServerFactory;
import com.fang.modbus.exception.ModbusException;

/**
 * 用于测试的服务端单例
 * @author James
 * @version 1.0
 * @since 2018年11月13日
 *
 */
public class ModbusServerSingleton
{
    private ModbusServer modbusServer;

    private ModbusServerSingleton() 
    {
        try {
			modbusServer = ModbusServerFactory.create("modbus-tcp.properties");
        } catch (ModbusException ex) {
            ex.printStackTrace();
        }
    }

    public ModbusServer getModbusServer() 
    {
        return modbusServer;
    }

    public static ModbusServerSingleton getInstance() 
    {
        return ServerForTestsHolder.INSTANCE;
    }

    private static class ServerForTestsHolder
    {
        private static final ModbusServerSingleton INSTANCE = new ModbusServerSingleton();
    }
}
